Today, computer systems are frequently used to support many different kinds of activities. As an example, companies or organizations may use a computer system to host an application program for processing business data. In such examples, the amount of processed data may be large and the data is stored in data storage systems. The data storage systems may be described by a schema. A data storage system may for example be a relational database system and the schema may describe the tables of the database system and the relations between the fields of the tables.
An application program may access data that is stored in a data storage system, process the data and store new or modified data. Accordingly, the data may be organized in the data storage system so that the application program can access and store data in an efficient way. A company may desire to change the way the data are processed or the way the data are stored. As an example, a company may desire to exchange an application program in use, for example a legacy system, by a new application program. The new application program may model the data processing in a different way and this may require storing the data in a data storage system in a different way. The company may then migrate data from a source data storage system that is in use to a target data storage system that is intended to be used in the future. The source data storage system may be organized according to a source schema and the target data storage system may be organized according to a target schema.